import React from 'react';

// 如果子组件向上没有找到Provider那么就会使用到这个默认值
const CommonContext = React.createContext({});

export  default  CommonContext;


/**
 *
 *   新版 context 实现方法
 *   Provider  数据提供者，位于顶层组件  AuthSimpleLayout
 *               <CommonContext.Provider value={}>  此处的value就是需要共享的数据，以此包裹的子组件都可以获取数据
 *
 *   Consumer：数据消费者，位于各个子组件，包括函数式组件
 *   使用方法：
 *   对于class组件，引入 CommonContext   写法1：class内部定义，static contextType = CommonContext;
 *                                      写法2：class外部定义，组件名称.contextType = CommonContext;
 *                                      取值  this.context
 *
 *    对于函数式组件，引入 CommonContext
 *    例如 ：
 *    const xxx = () => {
 *        return (
 *             <CommonContext.Consumer>
 *                 {
 *                     (value) => (基于 context 值进行渲染)
 *                 }
 *              </CommonContext.Consumer>
 *        )
 *    }
 *
 */